package br.com.fatecmococa.controller;
import br.com.fatecmococa.dao.ClienteDAO;
import br.com.fatecmococa.dao.DAO;
import br.com.fatecmococa.dao.TransferenciaDAO;
import br.com.fatecmococa.model.Cliente;
import br.com.fatecmococa.model.Transferencia;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;

@ManagedBean(name="principalMB")
@RequestScoped
public class PrincipalMB implements java.io.Serializable {

    private Cliente cliente;
    private List<Transferencia> transferencias;
    
    public PrincipalMB(){
       
        Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
        String userName = authentication.getName();
        
        DAO.close();
        
        ClienteDAO dao = new ClienteDAO();
        
        cliente = dao.getClientePorNome(userName);
                
        obterTransferencias();
    }

     private void obterTransferencias() {
        
        TransferenciaDAO dao = new TransferenciaDAO();
        try {
        transferencias = dao.todosTransferenciasPorNConta(cliente.getnConta());
        } catch(Exception e) {
            e.printStackTrace();
        }
    }
    
    public Cliente getCliente() {
        return cliente;
    }

    public void setCliente(Cliente cliente) {
        this.cliente = cliente;
    }

    public List<Transferencia> getTransferencias() {
        return transferencias;
    }

    public void setTransferencias(List<Transferencia> transferencias) {
        this.transferencias = transferencias;
    }
    
    
}
